package com.example.myandroidactualcombat;

import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

import androidx.appcompat.app.AppCompatActivity;

import com.example.myandroidactualcombat.data.ProcessText;
import com.example.myandroidactualcombat.data.User;

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;

public class ReadActivity extends AppCompatActivity implements View.OnClickListener {
    private TextView tv;
    String bookname;
    private Button bu_shangyiye;
    private Button bu_xiayiye;
    ProcessText processText;
    String txt;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_read);
        // 将String数据打包到Intent中，并给它一个Key标识。在ReadActivity当中，getIntent()方法获得这个intent，
        // 然后再getStringExtra(Key)，就可以获得你之前打包的那个数据了
        Intent intent = getIntent();
        bookname = intent.getStringExtra("bookname");
        initView();
        addlistener();
    }

    private void addlistener() {
        bu_shangyiye.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                txt=processText.getPre();
                tv.setText(txt);
            }
        });
        bu_xiayiye.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                txt=processText.getNext();
                tv.setText(txt);
            }
        });
    }

    private void initView() {
        tv = (TextView) findViewById(R.id.tv);
        bu_shangyiye = (Button) findViewById(R.id.bu_shangyiye);
        bu_xiayiye = (Button) findViewById(R.id.bu_xiayiye);
        File file = new File("/sdcard/Download/" + bookname + ".txt");
        Log.i("TAG", "initViewfile"+file);
        processText = new ProcessText(file, 0);
        txt=processText.getNext();
        tv.setText(txt);

    }

    public static String readAssetsTxt(Context context, String fileName) {
        try {
            //输入流，context当前的背景，getAssets获取assets文件夹里面的内容，
            //open()打开文件，文件的后缀名为txt，但是得用.txt表示
           // InputStream is = context.getAssets().open(fileName + ".txt");
            InputStream is=new FileInputStream("sdcard/Download"+fileName+".txt");
            //available(）判断文档有多大
            int size = is.available();
            //定义一个数组，数组的长度 为输入流的长度
            byte[] buffer = new byte[size];
            //读出buffer里面的内容，输入流以字节的方式全部传入到buffer里面来
            is.read(buffer);
            //关闭流
            is.close();
            //装化成String类型，编码格式改成utf-8
            String text = new String(buffer, "utf-8");
            //返回text的内容
            return text;
        } catch (Exception e) {
            e.printStackTrace();
        }
        //出错则显示
        return "读取错误，请检查文件名";
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.bu_shangyiye:

                break;
            case R.id.bu_xiayiye:

                break;
        }
    }
}
